package org.jeecg.modules.website.vo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.website.entity.WebWorkFile;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

@Data
@ApiModel(value="web_trade_notice对象", description="交易信息公告表")
public class WebTradeNoticePage implements Serializable {
    private static final long serialVersionUID = 1L;

    /**id*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
    private String id;
    /**分类1-建设工程2-政府采购3-土地矿权4-产权交易5-其他6-僵企资产处置7-声明8-融资公告*/
    @Excel(name = "分类1-建设工程2-政府采购3-土地矿权4-产权交易5-其他6-僵企资产处置7-声明8-融资公告", width = 15, dicCode = "sys_trade_category")
    @Dict(dicCode = "sys_trade_category")
    @ApiModelProperty(value = "分类1-建设工程2-政府采购3-土地矿权4-产权交易5-其他6-僵企资产处置7-声明8-融资公告")
    private String category;
    /**细分类*/
    @Excel(name = "细分类", width = 15)
    @ApiModelProperty(value = "细分类")
    private String type;
    /**发布区域*/
    @Excel(name = "发布区域", width = 15, dicCode = "sys_kf_area")
    @Dict(dicCode = "sys_kf_area")
    @ApiModelProperty(value = "发布区域")
    private String area;
    /**标题*/
    @Excel(name = "标题", width = 15)
    @ApiModelProperty(value = "标题")
    private String titile;
    /**摘要*/
    @Excel(name = "摘要", width = 15)
    @ApiModelProperty(value = "摘要")
    private String summary;
    /**内容*/
    @Excel(name = "内容", width = 15)
    @ApiModelProperty(value = "内容")
    private String content;
    /**打开方式(组件：component 路由：url)*/
    @Excel(name = "打开方式(组件：component 路由：url)", width = 15, dicCode = "web_open_type")
    @Dict(dicCode = "web_open_type")
    @ApiModelProperty(value = "打开方式(组件：component 路由：url)")
    private String openType;
    /**组件/路由 地址*/
    @Excel(name = "组件/路由 地址", width = 15)
    @ApiModelProperty(value = "组件/路由 地址")
    private String openPage;
    /**优先级（L低，M中，H高）*/
    @Excel(name = "优先级（L低，M中，H高）", width = 15, dicCode = "web_priority_type")
    @Dict(dicCode = "priority_type")
    @ApiModelProperty(value = "优先级（L低，M中，H高）")
    private String priority;
    /**发布状态（0未发布，1已发布，2已撤销）*/
    @Excel(name = "发布状态（0未发布，1已发布，2已撤销）", width = 15, dicCode = "web_publish_status")
    @Dict(dicCode = "web_publish_status")
    @ApiModelProperty(value = "发布状态（0未发布，1已发布，2已撤销）")
    private String publishStatus;
    /**发布人*/
    @Excel(name = "发布人", width = 15)
    @ApiModelProperty(value = "发布人")
    private String publisher;
    /**发布时间*/
    @Excel(name = "发布时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "发布时间")
    private Date publishTime;
    /**删除状态（0，正常，1已删除）*/
    @Excel(name = "删除状态（0，正常，1已删除）", width = 15)
    @ApiModelProperty(value = "删除状态（0，正常，1已删除）")
    @TableLogic
    private String delFlag;
    /**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
    /**创建时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createTime;
    /**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**更新时间*/
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**浏览量*/
    @Excel(name = "浏览量", width = 15)
    @ApiModelProperty(value = "浏览量")
    private Integer readNum;
    @Excel(name = "细分类型",width = 15)
    @ApiModelProperty(value = "细分类型")
    private String typeDesc;

    @ExcelCollection(name="附件表")
    @ApiModelProperty(value = "附件表")
    private List<WebWorkFile> webWorkFileList;
}

